Cách tiếp cận của Rust đối với độ tin cậy không chỉ đơn thuần là tránh các lỗi; đó chính là triết lý về thiết kế có ý thức. Nó phân loại mọi lỗi tiềm năng thành hai lĩnh vực: Khôi phục được và Không thể khôi phục lỗi. Điều này đảm bảo hệ thống luôn bền bỉ, dự đoán được và an toàn trước nguy cơ rò rỉ dữ liệu thầm lặng.
1. Phân loại các lỗi
Một lỗi khôi phục được (ví dụ như một tệp tin bị thiếu) là một trở ngại được dự kiến, nơi chương trình có thể thử lại hoặc thông báo cho người dùng. Một lỗi không thể khôi phục (ví dụ như tràn bộ đệm) đại diện cho một sự sụp đổ logic, nơi hành động an toàn nhất là dừng ngay lập tức—nguyên tắc Dừng nhanh dừng nhanh.
2. Phát triển dựa trên hợp đồng
Độ tin cậy được đạt được nhờ các ranh giới rõ ràng. Nếu điều kiện tiên quyết của một hàm được thỏa mãn nhưng yếu tố bên ngoài gây ra lỗi, hãy trả về một Result. Nếu logic nội bộ vi phạm các bất biến cốt lõi, Rust buộc phải dừng lại để ngăn ngừa tổn hại thêm đến trạng thái hệ thống.